home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / aal / exception.h < prev    next >
C/C++ Source or Header  |  2006-01-09  |  2KB  |  67 lines

  1. /* Copyright (C) 2001, 2002, 2003 by Hans Reiser, licensing governed by
  2.    libaal/COPYING.
  3.    
  4.    exception.h -- exception factory functions. */
  5.  
  6. #ifndef AAL_EXCEPTION_H
  7. #define AAL_EXCEPTION_H
  8.  
  9. #include <aal/types.h>
  10.  
  11. #ifndef ENABLE_MINIMAL
  12. extern void aal_exception_on(void);
  13. extern void aal_exception_off(void);
  14.  
  15. extern char *aal_exception_type_name(aal_exception_type_t type);
  16. extern char *aal_exception_option_name(aal_exception_option_t opt);
  17.  
  18. extern char *aal_exception_message(aal_exception_t *ex);
  19. extern aal_exception_type_t aal_exception_type(aal_exception_t *ex);
  20. extern aal_exception_option_t aal_exception_option(aal_exception_t *ex);
  21.  
  22. extern aal_exception_handler_t aal_exception_get_handler(void);
  23. extern void aal_exception_set_handler(aal_exception_handler_t handler);
  24.  
  25. extern aal_exception_option_t aal_exception_throw(aal_exception_type_t type, 
  26.                           aal_exception_option_t opt,
  27.                           const char *message, ...)
  28.                                                   __aal_check_format(printf, 3, 4);
  29.  
  30. #define aal_fatal(msg, list...)       \
  31.         aal_exception_throw(EXCEPTION_TYPE_FATAL, EXCEPTION_OPT_OK, msg, ##list)
  32.     
  33. #define aal_error(msg, list...)       \
  34.         aal_exception_throw(EXCEPTION_TYPE_ERROR, EXCEPTION_OPT_OK, msg, ##list)
  35.     
  36. #define aal_warn(msg, list...)        \
  37.         aal_exception_throw(EXCEPTION_TYPE_WARNING, EXCEPTION_OPT_OK, msg, ##list)
  38.     
  39. #define aal_info(msg, list...)        \
  40.         aal_exception_throw(EXCEPTION_TYPE_INFO, EXCEPTION_OPT_OK, msg, ##list)
  41.  
  42. #define aal_mess(msg, list...)        \
  43.         aal_exception_throw(EXCEPTION_TYPE_MESSAGE, EXCEPTION_OPT_OK, msg, ##list)
  44.  
  45. #define aal_yesno(msg, list...)       \
  46.         aal_exception_throw(EXCEPTION_TYPE_MESSAGE, EXCEPTION_OPT_YESNO, msg, ##list)
  47.  
  48. #define aal_okcancel(msg, list...)    \
  49.         aal_exception_throw(EXCEPTION_TYPE_MESSAGE, EXCEPTION_OPT_OKCANCEL, msg, ##list)
  50.  
  51. #define aal_retryignore(msg, list...) \
  52.         aal_exception_throw(EXCEPTION_TYPE_ERROR, EXCEPTION_OPT_RETRYIGNORE, msg, ##list)
  53.  
  54. #else
  55. #define aal_warn(msg, list...)
  56. #define aal_info(msg, list...)
  57. #define aal_mess(msg, list...)
  58. #define aal_fatal(msg, list...)
  59. #define aal_error(msg, list...)
  60. #define aal_yesno(msg, list...)
  61. #define aal_okcancel(msg, list...)
  62. #define aal_retryignore(msg, list...)
  63. #endif
  64.  
  65. #endif
  66.  
  67.